import 'package:flutter_crud_test_amir_rabbani/core/params/create_customer_params.dart';
import 'package:flutter_crud_test_amir_rabbani/core/params/edit_customer_params.dart';
import 'package:flutter_crud_test_amir_rabbani/core/resource/data_state.dart';
import 'package:flutter_crud_test_amir_rabbani/core/resource/use_case.dart';
import 'package:flutter_crud_test_amir_rabbani/data/local/my_database.dart';

abstract class CustomerRepository {
  Future<DataState<NoResponse>> create(CreateCustomerParams params);

  Future<DataState<NoResponse>> edit(EditCustomerParams params);

  Future<DataState<NoResponse>> delete(int params);

  Stream read();

  Future<DataState<CustomerDaoData>> readById(int id);
}
